Concurrent BLAST Mentors : Rupak Majumdar & Ranjit Jhala Abhijit Davare

نویسندگان

  • Rupak Majumdar
  • Ranjit Jhala
  • Abhijit Davare
چکیده

The aim of this project is to extend the functionality of the Berkeley Lazy Abstraction Software verification Toolkit (BLAST) [1] to verify safety properties of concurrent software systems described in the C language. This is achieved by modifying the internal representation of Regions in Blast to include multiple control locations and multiple call stacks. The modifications have been successfully exercised with several example programs. A heuristic partial order reduction method that aims to mitigate the state explosion problem for concurrent systems is also discussed.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Software Verification with BLAST

ion of C programs. In PLDI 01: Programming Language Design and Implementation, pages 203–213. ACM, 2001. 2. S. Das, D. L. Dill, and S. Park. Experience with predicate abstraction. In CAV 99: Computer-Aided Verification, LNCS 1633, pages 160–171. Springer-Verlag, 1999. 3. D. Detlefs, G. Nelson, and J. Saxe. Simplify theorem prover. 4. T.A. Henzinger, R. Jhala, R. Majumdar, G.C. Necula, G. Sutre,...

متن کامل

Thread-Modular Abstraction Refinement

We present an algorithm called Tar (“Thread-modular Abstraction Refinement”) for model checking safety properties of concurrent software. The Tar algorithm uses thread-modular assume-guarantee reasoning to overcome the exponential complexity in the control state of multithreaded programs. Thread modularity means that Tar explores the state space of one thread at a time, making assumptions about...

متن کامل

Checking Memory Safety with Blast

Blast is an automatic verification tool for checking temporal safety properties of C programs. Given a C program and a temporal safety property, Blast statically proves that either the program satisfies the safety property or the program has an execution trace that exhibits a violation of the property. Blast constructs, explores, and refines abstractions of the program state space based on lazy...

متن کامل

The Blast Query Language for Software Verification

Blast is an automatic verification tool for checking temporal safety properties of C programs. Blast is based on lazy predicate abstraction driven by interpolation-based predicate discovery. In this paper, we present the Blast specification language. The language specifies program properties at two levels of precision. At the lower level, monitor automata are used to specify temporal safety pro...

متن کامل

Temporal-Safety Proofs for Systems Code

We present a methodology and tool for verifying and certifying systems code. The verification is based on the lazy-abstraction paradigm for intertwining the following three logical steps: construct a predicate abstraction from the code, model check the abstraction, and automatically refine the abstraction based on counterexample analysis. The certification is based on the proof-carrying code pa...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003